#ifndef __SYSTEM_H__
#define __SYSTEM_H__

// 引用头文件
#include "head.h"

// 定义系统结构体
typedef struct FlightSystem
{
    F_list *Flight_list;   // 航班信息
    U_list *ADMIN_USER;    // 管理员账户信息
    U_list *REGULAR_USER;  // 普通用户信息
    U_list *SILVER_USER;   // 银卡会员信息 (9折)
    U_list *GOLD_USER;     // 金卡会员信息 (8折)
    U_list *PLATINUM_USER; // 白金会员信息 (7折)
} FlightSystem;

// 系统初始化
FlightSystem Sys_init(void);

// 通过数据来判断文件
char *By_Data_Judge_File(U_data data);

// 系统登录
U_data Sys_log_in(FlightSystem Flight_sys);

// 管理员 - 设定航班
int set_flight(F_list *list);
// 管理员 - 修改航班
void change_Flight(F_list *list);
// 管理员 - 修改普通用户
void change_massage(FlightSystem *flight);
// 管理员 - 增加超级用户
void add_superuser(FlightSystem *flight);

// 用户 买票
void Buy_Ticket(F_list *list, U_data *buyer_data);
// 用户 - 余额充值
void Recharge_balance(U_data *data);
// 用户 - 修改密码
void change_password(U_data *data);
// 用户 - 我的订单
void my_older(U_data *data);



// 系统菜单
void Sys_menu(FlightSystem *Flight_sys, U_data log_data);
// 判断用户等级
U_list *judge_grade(FlightSystem *Flight_sys, U_data sign);
// 替换
void lianbiao(U_list *list_1, U_data data);
// 判断用户等级并写入文件
void writing(U_list *list_2, FlightSystem *Flight_sys);

#endif // __SYSTEM_H__
